Electronic data security has become an area of great focus for development as more daily transactions become computerized. Computing devices are constantly being utilized to exchange financial data, personal identification data, etc. As a result, hackers may attempt to compromise computing devices to gain access to this valuable information. For example, malicious software (e.g., malware) may be loaded to passively or actively attack computing devices. Passive attacks may comprise malware observing data being passed between a processor and a memory to obtain passwords or other sensitive or confidential data. Active attacks may involve altering data stored in memory to trigger an atypical result such as allowing an unpermitted user to gain access to the computing device. In either instance, plaintext (unencrypted) data in the memory of a computing device, that is exchanged with a processor in the computing device, etc. is a major vulnerability.
Device manufacturers, component manufacturers, software developers, etc. continue to try to develop protective measure to combat vulnerabilities. Software-based malware detection and elimination solutions typically operate at the privilege level of an operating system (OS) in the computing device. These solutions may be effective against lower privilege attacks, but may not be able to combat higher-privileged malware like rootkits. Some hardware-based protective solutions are now emerging that are instituted very early during boot-up of a computing device, and thus may establish protective measures before malware even becomes active. Known-good protection firmware may be loaded early on during boot-up that may perform various functions such as checking whether subsequently loaded software comports with known-good versions, establishing protected areas of memory wherein data may be protected from being accessed by hostile software, etc. While the benefits of these protective measures may be apparent, at least one issue that hardware protection systems may introduce is additional processing overhead at a very low level resulting in, for example, slower overall performance for the computing device.
Although the following Detailed Description will proceed with reference being made to illustrative embodiments, many alternatives, modifications and variations thereof will be apparent to those skilled in the art.